package cn.edu.gduf.luowowo.article.mapper;


import cn.edu.gduf.luowowo.article.domain.StrategyContent;
import cn.edu.gduf.luowowo.article.domain.StrategyDetail;
import cn.edu.gduf.luowowo.article.query.StrategyDetailQuery;
import org.apache.ibatis.annotations.Param;

import java.util.List;

public interface StrategyDetailMapper {
    int deleteByPrimaryKey(Long id);

    int insert(StrategyDetail record);

    StrategyDetail selectByPrimaryKey(Long id);

    List<StrategyDetail> selectAll();

    int updateByPrimaryKey(StrategyDetail record);

    List<StrategyDetail> selectForList(StrategyDetailQuery qo);

    void insertRelation(@Param("tagId") Long tagId, @Param("detailId") Long detailId);

    StrategyContent queryContentByDetailId(Long id);

    void removeRelation(Long detailId);

    List<StrategyDetail> selectByCatalogId(Long catalogId);

    List<StrategyDetail> selectDetailViewNumTop3(Long destId);

    List<StrategyDetail> selectForList1(@Param("qo") StrategyDetailQuery qo, @Param("detailIds") List<Long> detailIds);

    void updateStrategyDetailForStatis(StrategyDetail detail);

    List<StrategyDetail> selectIdAndSubTitle();

    List<StrategyDetail> selectDetailUnaboardViewNumTop5();

    List<Long> selectDetailIdByTagId(StrategyDetailQuery qo);

}